TP Joint SC Helper 

image52.gif

The Joint SC Helper object is used for thinkingParticles to define joint parameters outside of the standard thinkingParticles workflow. This helper is only valid in conjunction with the new SC Shape Collision dynamics operator! No other dynamics engine offered by thinkingParticles supports this operator right now.

Being a standard 3ds Max helper object it can be easily adjusted and handled with standard 3ds Max modeling tools. As well, it has Maxscript-accessible properties and methods that can be used to automate the creation and modification of the joint helpers.

Be aware that in order to properly import the objects and have them recognized by thinkingParticles you must import all the source objects (and not the joint helpers) into the SAME Object2Particle operator, AND specify the SC operator you will be using (in the lower rollout of the Obj2Particle). Importing the SC Joint Helpers is not required - when all the source objects are imported into the same Obj2Particle the joints will be recognized.

Obj2Particle has an input for "Joint Code" which corresponds to the Joint Break Code on the SC Joint Helper. If you input a code with an animated value (or any other method) which matches the SC Joint Helper break code, then the joints with that code will break.

Controls 

Fast Access Dropdown - this first drop down menu gives quick access to all other joint helpers in a scene. Selecting a joint helper from this list, saves you time searching it in the 3d scene.

Joint Type Dropdown
- Eight possible joint types are supported by this helper object. Please see the list of Joint Types below.

image52.gif

From
- choose an object to act as the "From" object. Remember both the From and To objects must be defined in order for the joint to work.

To
- choose an object in the scene to act as the "To" object.

Align From/To
- aligns the joint axis either along the From or To link partner. This affects how the joint behaves if the type is a Cylinderical, Hinge, Ball, Spring and Slider.

Set Position
- brings up a choice of 3 positions.

Average - sets the joint "between" the "From" and "To" link partners (e.g. averages the object pivot positions).
Center of From - places the joint helper into the center point of the "From" link partner
Center of To - places the joint helper into the center point of the "From" link partner  

Select - used to select either the "From" object or the "To" object or Both link partners.

Display 

Size - sets the absolute/relative size of the Joint helper icon in the viewport.

Viewport Size
- check this option to keep the same size in the viewport, regardless of the zoom level

Joint Rollout Menu 

Depending on the joint type selected, the rollouts will update to show the properties available for that joint type. Below are the joint types and their parameters.

Spherical Joint 

Choose this option to create a Spherical type joint between Objects. Spherical joints have no rotation limit and can rotate completely around in a spherical (polar) manner. Imagine the From object being at the center of a sphere and the To object on the surface of the sphere - the joint can rotate to any point on the sphere.

HFragment UI
Breakable
- when checked this Joint is able to break off

Velocity
- sets the maximum velocity allowed before the Joint "breaks off". This value is the difference in velocities of the From and To objects, measured in Max units per second.

Rotation
- sets the maximum allowed rotational speed (angle change per second) before the Joint is broken

Code
- defines a fixed code or number to break off this joint

Light
- sets an illumination threshold for breaking off this Joint

Collision
- check this option to allow for collision detection between Joint objects

Friction
- sets a friction value for this Joint
 

Fixed Joint 

Use this Joint option to create a Fixed type joint between objects

HFragment UI
Breakable
- when checked this Joint is able to break off

Velocity
- sets the maximum velocity allowed before the Joint "breaks off"

Rotation
- sets the maximum allowed rotational speed (angle change per second) before the Joint is broken

Code
- defines a fixed code or number to break off this joint

Light
- sets an illumination threshold for breaking off this Joint

Collision
- check this option to allow for collision detection between Joint objects

Spring Joint 

Choose this Joint option to create a "Spring" type joint between Objects

HFragment UI
Breakable
- when checked this Joint is able to break off

Velocity
- sets the maximum velocity allowed before the Joint "breaks off"

Rotation
- sets the maximum allowed rotational speed (angle change per second) before the Joint is broken

Code
- defines a fixed code or number to break off this joint

Light
- sets an illumination threshold for breaking off this Joint

Collision
- check this option to allow for collision detection between Joint objects

Spring
- defines the Spring Power, the higher this value the more power the spring will have

Spring Initial
- defines a "pre-loading" amount for the spring. Positive values will force to push the object away and negative values will pull the objects towards the Joint axis point. This value is visualized in the view port in the form of a rectangular dot, either moving up or down from the joint axis point.

Damping
- defines the dampening factor of the spring

Friction
- sets a friction value for this Joint

 
Cylindrical Joint 

This menu option creates a Cylindrical type joint between Objects

HFragment UI
Breakable
- when checked this Joint is able to break off

Velocity
- sets the maximum velocity allowed before the Joint "breaks off"

Rotation
- sets the maximum allowed rotational speed (angle change per second) before the Joint is broken

Code
- defines a fixed code or number to break off this joint

Light
- sets an illumination threshold for breaking off this Joint

Collision
- check this option to allow for collision detection between Joint objects

Friction
- sets a friction value for this Joint

Hinge Joint

 Choose this option to create a "Hinge" type joint between Objects

HFragment UI
Breakable
- when checked this Joint is able to break off

Velocity
- sets the maximum velocity allowed before the Joint "breaks off"

Rotation
- sets the maximum allowed rotational speed (angle change per second) before the Joint is broken

Code
- defines a fixed code or number to break off this joint

Light
- sets an illumination threshold for breaking off this Joint

Collision
- check this option to allow for collision detection between Joint objects

Angle Range
- defines the rotational constraining angle of this joint

Initial Angle
- balances the starting angle of this Joint type 0 % means the angle will only allow to bend one way

Friction
- sets a friction value for this Joint

 
Ball Joint 

Choose this option to create a "Ball" type joint between Objects

HFragment UI
Breakable
- when checked this Joint is able to break off

Velocity
- sets the maximum velocity allowed before the Joint "breaks off"

Rotation
- sets the maximum allowed rotational speed (angle change per second) before the Joint is broken

Code
- defines a fixed code or number to break off this joint

Light
- sets an illumination threshold for breaking off this Joint

Collision
- check this option to allow for collision detection between Joint objects

Angle Range
- defines the rotational constraining angle of this joint

Initial Angle
- sets the starting angle of this Joint type

Friction
- sets a friction value for this Joint  

 
Wobble Joint 

To create a "Wobble" (rubber) type joint between Objects, choose this option

HFragment UI
Breakable
- when checked this Joint is able to break off

Velocity
- sets the maximum velocity allowed before the Joint "breaks off"

Rotation
- sets the maximum allowed rotational speed (angle change per second) before the Joint is broken

Code
- defines a fixed code or number to break off this joint

Light
- sets an illumination threshold for breaking off this Joint

Collision
- check this option to allow for collision detection between Joint objects

Wobble
- defines the "wobble" factor of this joint

Damping
- sets the dampening factor of this Joint type. Low values like 1.0 will make the joint re-align very slowly, whereas higher values like 10.0 will cause the joint to re-align very quickly (and beware as this motion can be added as velocity if the objects contain multiple joints).  

 
Slider Joint 

Choose this option to create a "Slider" type joint between Objects

HFragment UI
Breakable
- when checked this Joint is able to break off

Velocity
- sets the maximum velocity allowed before the Joint "breaks off"

Rotation
- sets the maximum allowed rotational speed (angle change per second) before the Joint is broken

Code
- defines a fixed code or number to break off this joint

Light
- sets an illumination threshold for breaking off this Joint

Collision
- check this option to allow for collision detection between Joint objects

Length
- defines the "length" of this joint

Initial Length
- sets the starting length (position) of this Joint type

Damping
- sets the dampening factor of this Joint type